97 research outputs found

    Deploying active objects onto multicore

    Get PDF
    The performance of a program on multicore platform crucially depends on the scheduling of its tasks; existing high-level programming languages, however, offer limited control over scheduling. In this thesis, we develop Cacoj as an extensible tool set to transform Creol’s active concurrent objects into Java to be deployed on multicore through standard Java Runtime Environment. The concurrent object paradigm is a promising trend for multicore programming because each object may conceptually encapsulate a processor. Cacoj introduces a higher-level abstraction of concurrency API and a Creol compiler in which the translated object in Java takes control over the scheduling of the incoming messages through a per-object approach in contrast with current mainstream trend. Cacoj brings about the required grounds to extend Creol syntax to additionally specify different levels of priority and integrate them into the notion of active concurrent objects

    Actors at work

    Get PDF
      The core contributions of this thesis target the intersection of object orientation, actor model, and concurrency. We choose Java as the main target programming language and as one of the mainstream object-oriented languages. We formalize a subset of Java and its concurrency API to facilitate formal verification and reasoning about it. We create an abstract mapping from a concurrent-object modeling language, ABS, to the programming semantics of concurrent Java. We provide the formal semantics of the mapping and runtime properties of the concurrency layer including deadlines and scheduling policies. We provide an implementation of the ABS concurrency layer as a Java API library and framework utilizing the latest language additions in Java 8.  Algorithms and the Foundations of Software technolog

    Formal Verification of Service Level Agreements Through Distributed Monitoring

    Get PDF
    In this paper, we introduce a formal model of the availability, budget compliance and sustainability of istributed services, where service sustainability is a new concept which arises as the composition of service availability and budget compliance. The model formalizes a distributed platform for monitoring the above service characteristics in terms of a parallel composition of task automata, where dynamically generated tasks model asynchronous events with deadlines. The main result of this paper is a formal model to optimize and reason about service characteristics through monitoring. In particular, we use schedulability analysis of the underlying timed automata to optimize and guarantee service sustainability

    Programming and Deployment of Active Objects with Application-Level Scheduling

    Get PDF
    We extend and implement a modeling language based on concurrent active objects with application-level scheduling policies. The language allows a programmer to assign pri- orities at the application level, for example, to method def- initions and method invocations, and assign corresponding policies to the individual active objects for scheduling the messages. Thus, we leverage scheduling and performance related issues, which are becoming increasingly important in multi-core and cloud applications, from the underlying operating system to the application level. We describe a tool-set to transform models of active objects extended with application-level scheduling policies into Java. This tool-set allows a direct use of Java class libraries; thus, we obtain a full-fledged programming language based on active objects which allows for high-level control of deployment related is- sues

    Multi-locus sequence type analysis of Shigellas pp. Isolates from Tehran, Iran

    Get PDF
    Background and Objectives: Strains of Shigella spp. can cause shigellosis, or bacillary dysentery. That is a public health problem worldwide. The aim of this study was to describe the population structure and genetic relatedness of multidrug resistant S. sonnei and S. flexneri isolated during a one year period from children with diarrhea in Tehran, Iran. Materials and Methods: A total of 70 Shigella spp. were detected during the study period. Twenty MDR isolates of Shigella spp. were randomly selected and used in this study. Bacterial identification was performed by conventional biochemical and serological and confirmed by molecular method. After antimicrobial susceptibility testing, we used Multilocus sequence typing (MLST) for subtyping isolates. Results: We found 14 Shigella sonnei and 6 Shigella flexneri isolates. Results of MLST showed five sequence types (ST) (145, 152, 241, 245, 1502) and BURST analysis revealed the largest number of single locus variant (SLV) and highest frequency (FREQ) for ST152. ST 152 with nine members was predicted as the founder by BURST. Frequency for ST 1502 and ST 245 was four isolates and the least frequency was seen for ST 241 and 145 with one and two members, respectively. ST 145 and ST 245 were described as singletons in BURST. All isolates with ST145 and ST245 were identified as Shigella flexneri. Conclusion: Annual Multi locus sequence typing of MDR Shigella would help us in better understanding of dominant species and comparing our results with the same studies in other countries especially our neighbor countries in source tracking purposes. © Tehran University of Medical Science. All rights reserved

    Prevalence of chronic kidney disease and its associated risk factors: The first report from Iran using both microalbuminuria and urine sediment

    Get PDF
    Background: The incidence of major risk factors of chronic kidney disease (CKD) in the world is on the rise, and it is expected that this incidence and prevalence, particularly in developing countries, will continue to increase. Using data on urinary sediment and microalbuminuria, we aimed to estimate the prevalence of CKD in northeast Iran. Methods: In a cross-sectional study, the prevalence of CKD in a sample of 1557 regionally representative people, aged � 18 years, was analyzed. CKD was determined based on glomerular filtration rate (GFR) and microalbuminuria. Life style data, urine and blood samples were collected. Urine samples without any proteinuria in the initial dipstick test were checked for qualitative microalbuminuria. If the latter was positive, quantitative microalbuminuria was evaluated. Results: 1557 subjects with a mean age of 56.76 ± 12.04 years were enrolled in this study. Based on the modifcation of diet in renal disease (MDRD) equation, 137 subjects (8.89%) were categorized as CKD stages III-V. Based on urine abnormalities, the prevalence of combined CKD stages I and II was 10.63%, and based on macro- and microalbuminuria it was 14.53%. The prevalence of CKD was significantly associated with sex, age, marital status, education, diabetes mellitus (DM), hypertension (HTN), ischemic heart disease (IHD), waist to hip ratio, myocardial infarction (MI), and cerebrovascular accident (CVA). Conclusion: CKD and its main risk factors are common and represent a definite health threat in this region of Iran. Using and standardizing less expensive screening tests in low resource countries could be a good alternative that may improve the outcome through early detection of CKD

    Monitoring Method Call Sequences using Annotations

    Get PDF
    In this paper we introduce JMSeq, a Java-based tool for the specification and runtime verification via monitoring of sequences of possibly nested method calls. JMSeq provides a simple but expressive way to specify the sequential execution of a Java program using code annotations via user-given sequences of methods calls. Similar to many monitoring-oriented environments, verification in JMSeq is done at run- time, but differently from all other approaches based on aspect-oriented programming, JMSeq does not use code instrumentation, and therefore is suitable for component-based software verification

    On the Integration of Automatic Deployment into the ABS Modeling Language

    Get PDF
    In modern software systems, deployment is an integral and critical part of application development (see, e.g., the DevOps approach to software development). Nevertheless, deployment is usually overlooked at the modeling level, thus losing the possibility to perform deployment conscious decisions during the early stages of development. In this paper, we address the problem of promoting deployment as an integral part of modeling, by focusing on the Abstract Behavioral Specification (ABS) language used for the specification of models of systems composed of concurrent objects consuming resources provided by deployment components. We extend ABS with class annotations expressing the resource requirements of the objects of that class. Then we define a tool that, starting from a high-level declaration of the desired system, computes a model instance of such system that optimally distributes objects over available deployment components

    Towards Type-Based Optimizations in Distributed Applications Using ABS and JAVA 8

    Get PDF
    In this paper we present an API to support modeling applications with Actors based on the paradigm of the Abstract Behavioural Specification (ABS) language. With the introduction of JAVA 8, we expose this API through a JAVA library to allow for a high-level actor-based methodology for programming distributed systems which supports the programming to interfaces discipline. We validate this solution through a case study where we obtain significant performance improvements as well as illustrating the ease with which simple high and low-level optimizations can be obtained by examining topologies and communication within an application. Using this API we show it is much easier to observe drawbacks of shared data-structures and communications methods in the design phase of a distributed application and apply the necessary corrections in order to obtain better results
    corecore